<?php
abstract class abstract_product_description {
    protected $product_id;
    protected $language_id;
    protected $product_name;
    protected $product_desc;
    protected $meta_description;
    protected $meta_keyword;
    protected $tag;

    public function __construct(){
        $this->product_id       = null;
        $this->language_id      = null;

        $this->product_name     = '';
        $this->product_desc     = '';
        $this->meta_description = '';
        $this->meta_keyword     = '';
        $this->tag              = '';
    }

    public function setData($data){
        $this->setId($data['product_id']);
        $this->setLanguageId($data['language_id']);
        $this->setName($data['product_name']);
        $this->setDescription($data['description']);
        $this->setMetaDescription($data['meta_description']);
        $this->setMetaKeyword($data['meta_keyword']);
        $this->setTag($data['tag']);
    }

    public function getData(){
        $data['product_id']         = $this->getProductId();
        $data['language_id']        = $this->getLanguageId();
        $data['product_name']       = $this->getProductName();
        $data['product_desc']       = $this->getProductDesc();
        $data['meta_description']   = $this->getMetaDescription();
        $data['meta_keyword']       = $this->getMetaKeyword();
        $data['tag']                = $this->getTag();
        return $data;
    }

    public function setProductId($product_id){
        $this->product_id = $product_id;
        return $this;
    }

    public function getProductId(){
        return $this->product_id;
    }

    public function setLanguageId($language_id){
        $this->language_id = $language_id;
        return $this;
    }

    public function getLanguageId(){
        return $this->language_id;
    }

    public function setName($product_name){
        $this->product_name = $product_name;
    }

    public function getName(){
        return $this->product_name;
    }

    public function setDescription($product_desc){
        $this->product_desc = $product_desc;
        return $this;
    }

    public function getDescription(){
        return $this->product_desc;
    }

    public function setMetaDescription($meta_description){
        $this->meta_description = $meta_description;
        return $this;
    }

    public function getMetaDescription(){
        return $this->meta_description;
    }

    public function setMetaKeyword($meta_keyword){
        $this->meta_keyword = $meta_keyword;
        return $this;
    }

    public function getMetaKeyword(){
        return $this->meta_keyword;
    }

    public function setTag($tag){
        $this->tag = $tag;
        return $this;
    }

    public function getTag(){
        return $this->tag;
    }    
}

